Map data product and map data processing device

ABSTRACT

A data product that can be read by a computer or a map data processing apparatus, contains map data including map-related information related to a map. And the map-related information includes a compilation of a plurality of information elements of a single type; the map-related information can be updated in units of the individual information elements at the map data processing apparatus; and the map-related information includes management information used to manage the map-related information, which is also updated when the map-related information is updated in units of the individual information elements.

INCORPORATION BY REFERENCE

The disclosure of the following priority application is hereinincorporated by reference: Japanese Patent Application No. 2002-282946filed Sep. 27, 2002

TECHNICAL FIELD

The present invention relates to a map data product and a map dataprocessing apparatus.

BACKGROUND ART

Map data of a road map and the like used in a navigation system areprovided in a recording medium such as a CD-ROM or a DVD-ROM in therelated art. In addition, map data are provided to a navigation systeminstalled in a vehicle through communication.

However, a system through which a large volume of map data provided in arecording medium or the like can be partially updated with a high degreeof efficiency has not been proposed in the related art.

DISCLOSURE OF THE INVENTION

The present invention provides a map data product and a map dataprocessing apparatus that enable a highly efficient partial update ofmap data with a large data volume provided in a recording medium or thelike.

The 1st data product according to the present invention that can be readby a computer or a map data processing apparatus, comprises: map dataincluding map-related information related to a map, and: the map-relatedinformation includes a compilation of a plurality of informationelements of a single type; the map-related information can be updated inunits of the individual information elements at the map data processingapparatus; and the map-related information includes managementinformation used to manage the map-related information, which is alsoupdated when the map-related information is updated in units of theindividual information elements.

In this data product, it is preferred that: roads are each indicated asa link string having one or more continuous links, with nodesrepresenting points on the roads and each link representing a roadportion connecting two adjacent nodes; and the information elements eachcorrespond to information related to a link string. In this case, it ispreferred that the information related to the link string includes nodeposition information indicating a position of a node contained in thelink string. Also, it is preferred that the information related to thelink string includes guidance information related to the link string.Or, it is preferred that: a plurality of levels each corresponding toone of a plurality of scaling factors of the map are defined; a levelcorresponding to a scaling factor with a smaller value that renders themap as a wider area map is designated as a higher-order level; aplurality of sets of map-related information are provided each incorrespondence to one of the plurality of levels; and the node positioninformation included in the information related to the link string at aspecific level contains node position information of a node at thespecific level and node position information on a node at a lower-orderlevel corresponding to the node at the specific level.

In the 1st data product, it is preferred that: the map-relatedinformation is information related to a background used to display aroad map; and the information elements each constitute informationrelated to a background object corresponding to a single displaymanagement unit. In this case, it is preferred that the informationrelated to a background object corresponding to the single displaymanagement unit is information with regard to a single polygon, a singlepoly line or a single point related to the background. Also, it ispreferred that: the information related to a background objectcorresponding to the single display management unit includes informationindicating a drawing order; and the map-related information assumes astructure that allows a rearrangement of a plurality of sets ofinformation each related to a background object corresponding to thesingle display management unit which are grouped together, incorrespondence to the drawing order when one of the plurality of sets ofinformation each related to a background object corresponding to thesingle display management unit is updated.

In the 1st data product, it is preferred that the information elementseach correspond to information related to a single name used to displaya road map. In this case, it is preferred that: the information relatedto a single name includes information indicating a drawing order; andthe map-related information assumes a structure that allows arearrangement of a plurality of sets of information each related to asingle name which are grouped together, in correspondence to the drawingorder when one of the plurality of sets of information related to asingle name is updated.

In the 1st data product, it is preferred that: points on roadsconstitute nodes; the map-related information is information related toconnections of the nodes used for route calculation; and the informationelements each correspond to information managed in a single node unit.In this case, it is preferred that the information managed in the singlenode unit includes information related to a subject node and informationrelated to a node adjacent to the subject node. Also, it is preferredthat: a plurality of levels each corresponding to one of a plurality ofscaling factors of the map are defined; a level corresponding to ascaling factor with a smaller value that renders the map as a wider areamap is designated as a higher-order level; a plurality of sets ofmap-related information are provided each in correspondence to one ofthe plurality of levels; and node position information included in theinformation managed in the single node unit at a specific level containsnode position information on a node at the specific level and nodeposition information on a node at a lower-order level corresponding tothe node at the specific level.

In the 1st data product, it is preferred that: points on roadsconstitute nodes; the map-related information is information related toconnections of the nodes used for route calculation; a plurality oflevels each corresponding to one of a plurality of scaling factors ofthe map are defined; a level corresponding to a scaling factor with asmaller value that renders the map as a wider area map is designated asa higher-order level; a plurality of sets of map-related information areprovided each in correspondence to one of the plurality of levels; andthe information elements each constitute information related to a nodeat a lower-order level corresponding to information related to a node ata specific level. In this case, it is preferred that node positioninformation included in the information related to the node containsposition information on the node at a level having contained therein thenode and position information on a node at a lower-order levelcorresponding to the node at the level having contained therein thenode.

The 2nd data product according to the present invention that can be readby a computer or a map data processing apparatus, comprises: map dataincluding map-related information related to a map, and: points on roadsconstitute nodes and road portions extending between adjacent nodes areindicated as links; information used to identify each of the nodesincludes node position information related to latitude and longitude;and information used to identify each of the links includes acombination of the node position information related to the latitude andlongitude of a node at one end of a target link and the node positioninformation related to the latitude and longitude of a node at anotherend of the target link.

In the 2nd data product, it is preferred that the information used toidentify each of the links specifies a direction of the target link incorrespondence to an order with which the node position informationrelated to the latitude and longitude of the node at the one end of thetarget link and the node position information related to the latitudeand longitude of the node at the other end of the target link arecombined.

Also, it is preferred that: a plurality of levels each corresponding toone of a plurality of scaling factors of the map are defined; a levelcorresponding to a scaling factor with a smaller value that renders themap as a wider area map is designated as a higher-order level; aplurality of sets of map-related information are provided in each incorrespondence to one of the plurality of levels; and the node positioninformation at a specific level contains node position information on anode at the specific level and node position information on a node at alower-order level corresponding to the node at the specific level.

In the above, it is preferred that the information elements each includeidentification information indicating whether information pertaining toa subject information element is valid or invalid.

It is preferred that the above data products are each a recording mediumhaving recorded therein the map data.

A map data processing apparatus according to the present inventioncomprises: a recording medium drive means having loaded therein arecording medium that is a data product according to claim 20; an updatedata acquisition means for acquiring update data used to updatemap-related information in units of the individual information units;and a processing means for processing map data based upon the map datarecorded in the recording medium and the update data acquired by theupdate data acquisition means.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows how map data are exchanged;

FIG. 2 is a block diagram of an on-vehicle navigation system;

FIG. 3 is a conceptual diagram illustrating the relationships among thelevels, the blocks and the meshes of the map data;

FIG. 4 is a conceptual diagram of the relationship among a blockmanagement table, mesh management tables and mesh data, which aremanaged with the mesh management tables;

FIG. 5 provides a more detailed diagram illustrating the relationshipamong the block management table, a given mesh management table and themesh data;

FIG. 6 presents examples of structures that may be adopted in linkstrings and links;

FIG. 7 shows the contents of the link table;

FIG. 8 shows the contents of the link attribute table;

FIG. 9 shows the contents of a link relation information table;

FIG. 10 shows how map data are updated and managed in the navigationsystem;

FIG. 11 presents a flowchart of the control implemented when updatingdata in units of link strings;

FIG. 12 presents a flowchart of the control implemented by the controldevice when displaying a map by reading map data (road/guidance data);

FIG. 13 presents a detailed flowchart of the processing executed in stepS12 in FIG. 12;

FIG. 14 shows the contents of the mesh data constituting thebackground/name data;

FIG. 15 shows the contents of the background table;

FIG. 16 shows the contents of the name table;

FIG. 17 shows the contents of mesh data constituting route calculationdata;

FIG. 18 shows the contents of the connection table;

FIG. 19 is a conceptual diagram of the relationship between node ID Nos.and link ID Nos.; and

FIG. 20 shows the contents of the level correspondence table.

BEST MODE FOR CARRYING OF THE INVENTION

FIG. 1 shows how map data such as map display data, guidance data androute calculation data are exchanged in an embodiment. An on-vehiclenavigation system 1 reads map data, management information, guidancesearch data and the like from a recording medium 2 which may be a CD ROMor a DVD ROM. It receives update data to be used to update the map dataand the like from a removable memory 3. The removable memory 3 is adetachable recording medium having recorded therein the update data orthe like to be used to update part of the map data.

In addition, the navigation system 1 can be connected to a communicationdevice 4 such as a portable telephone. The navigation system 1 can beconnected to the Internet 5 via the communication device 4 and can befurther connected with a map server 6 via the Internet 5. At the mapserver 6, map data from old versions up to and including the latestversion of map data, are held at a map database 7, and guidance searchdata from old versions up to and including the most recent guidancesearch data, are held at a guidance search database 8. Thus, the mapserver 6 is capable of providing update data to be used to update partof the map data to the navigation system 1 via the Internet 5. It is tobe noted that the guidance search data contain position informationindicating the positions of POIs and the like and attribute informationindicating the specific types, the names and the like of the POIs andthe like.

The navigation system 1 includes a control device 11 and a nonvolatilememory 12. The control device 11 is constituted with a microprocessorand its peripheral circuits. The nonvolatile memory 12 is a nonvolatilememory such as a hard disk or a flash memory installed inside thenavigation system 1. The nonvolatile memory 12 may be any type ofstorage device as long as data written therein are retained even whenthe power to the navigation system 1 is turned off.

Once the recording medium 2 is loaded into the navigation system 1, itremains loaded in the navigation system 1 until it is replaced with anew recording medium 2. Accordingly, it may be referred to as a fixedmedium as opposed to the removable memory 3. The map database 7 and theguidance search database 8, which hold all the versions of map data andguidance search data, from the oldest to the most recent, are databasesholding mother data. Using the data at the map database 7 and theguidance search database 8, the map server 6 can prepare a recordingmedium 2 having recorded therein initial (pre-update) map data or aremovable memory 3 having stored therein update data to be used for dataupdate.

FIG. 2 is a block diagram of the on-vehicle navigation system 1. Thenavigation system 1 comprises the control device 11, the nonvolatilememory 12, a current position detection device 13, a DVD drive device14, a memory 15, a communication interface 16, a removable memory readdevice 17, a monitor 18 and an input device 19.

The current position detection device 13, which detects the currentposition of the vehicle, may be constituted with, for instance, anazimuth sensor that detects the advancing azimuth of the vehicle, avehicle speed sensor that detects the vehicle speed, a GPS sensor thatdetects a GPS signal transmitted from a GPS (global positioning system)satellite and the like. The DVD drive device 14 reads map data and thelike in the recording medium 2 loaded therein. In the embodiment, therecording medium 2 is a DVD ROM. However, the recording medium 2 may bea CD ROM or another type of recording medium.

The memory 15 is used to store the vehicle position information detectedwith the current position detection device 13 and the like and also tostore node information, link information and the like of the nodes andthe links on a recommended route calculated by the control device 11. Inaddition, a mesh management table which is to be detailed later isstored in the memory 15. The memory 15 constitutes a working area of thecontrol device 11. The communication interface 16 is used to achieve aconnection with the communication device 4. The use of a portabletelephone and an Internet connection are enabled via the communicationinterface 16. Data in the removable memory 3 can be read with theremovable memory read device 17 at which the removable memory 3 isloaded.

The monitor 18 is a display device at which a map, a recommended routeand various types of information are displayed. The monitor 18 may beprovided as an integrated part of the navigation system main unit or itmay be provided as a separate casing. In addition, the monitor 18disposed at an isolated position may be connected to the navigationsystem main unit through a cable or the like. Through the input device19, the destination for the vehicle and the like are entered whenconducting a route search. It may be constituted as a remote-controlunit or it may be constituted as a touch panel disposed on the screen atthe monitor 18. The control device 11 executes various types ofnavigation processing such as road map display, route calculation (routesearch) and route guidance by using the current vehicle positioninformation detected with the current position detection device 13, themap data stored in the recording medium 2 or the nonvolatile memory 12.It is to be noted that a program of the various types of processingexecuted by the control device 11 is installed in a ROM (not shown)provided inside the control device 11.

Map Data Structure

The data structure adopted in the map data mentioned above is nowexplained in further detail. The map data are information related tomaps and include road data, guidance data, background data, name data,route calculation data. The road data are used to display roads, specifythe current vehicle position, and execute map matching and so on. Theguidance data includes intersecting point names, road names, directionalterms, directional guidance facility information and the like, and areused to provide guidance for the driver or the like along therecommended route based upon the calculated recommended route. Thebackground data are used to display roads and a background in a roadmap. The name data includes geographic area names, building names andthe like, and are used when displaying a road map. The routecalculation, which are network data constituted with branchinginformation and the like not directly relevant to the specific roadshapes, are mainly used when calculating a recommended route (whenexecuting a route search).

The map data are managed based upon a concept that they are provided atdifferent levels in blocks and meshes in the embodiment. In theembodiment, the map data are divided into seven different levels ofdata, with each level corresponding to a specific scaling factor. Level0 corresponds to the scaling factor at which the map is provided withthe most detail, and at level 6, the map is provided as the widest-areamap. While the different levels of map data are provided at varyingscaling factors, a common area is covered by the various levels of mapdata. Namely, supposing that the subject area is the entire nation ofJapan, map data of the entire nation of Japan are provided at each levelwith a scaling factor different from the scaling factors correspondingto the other levels. For instance, at level 0, map data of the entirenation of Japan are provided at a scaling factor of 1/6250, at level 1,map data of the entire nation of Japan are provided at a scaling factorof 1/25,000, at level 2, map data of the entire nation of Japan areprovided at a scaling factor of 1/100,000, at level 3, map data of theentire nation of Japan are provided at a scaling factor of 1/400,000, atlevel 4, map data of the entire nation of Japan are provided at ascaling factor of 1/1,600,000, at level 5, map data of the entire nationof Japan are provided at a scaling factor of 1/6,400,000, and at level6, map data of the entire nation of Japan are provided at a scalingfactor of 1/128,000,000. In other words, seven sets of map data areprovided in correspondence to levels 0 to 6. A level in the level 0 sideis referred to as a lower level and a level in the level 6 side isreferred to as a upper level.

FIG. 3 is a conceptual diagram provided to facilitate an explanation ofthe relationships among the map data levels, blocks and meshes. FIG. 3shows map data at levels 1 and 2 as an example. Reference numeral 101indicates the subject area covered by the map data. Assuming that themap data cover the entire nation of Japan, the area 101 is a range thatcontains the entire nation of Japan. The same range of subject area iscovered at levels 1 and 2. At level 1, the area 101 is managed as aplurality of blocks 102, i.e., 4×4=16 blocks. Each block 102 is dividedinto a plurality of meshes 103 and is managed with the meshes. In theembodiment, the data in the block are managed as m×n sets of mesh data.The blocks 102 of map data at the same level are each divided into m×nmeshes.

At level 2, the area 101 is managed with a plurality of blocks 102,i.e., 2×2=4 blocks. Each block 104 is divided into a plurality of meshes105 and is managed with the meshes. In the embodiment, the data in theblock are managed as p×q sets of mesh data. The blocks 104 of map dataat the same level are each divided into p×q meshes.

At levels 1 and 2, the area 101 is divided into different numbers ofblocks and the individual blocks are divided into different numbers ofmeshes, since different volumes of data are handled at level 2 with asmaller scaling factor (a larger denominator) providing a wider area mapand at level 1 with a larger scaling factor (a smaller denominator)providing a more detailed map compared to level 2. Namely, the map dataare divided as appropriate in correspondence to the volume of datahandled at each level. However, at a given level, the size of theindividual blocks and the size of the individual meshes remain constant.It is to be noted that the numbers of blocks that the area 101 isdivided into at the two levels in FIG. 3 simply represent an example andthe area 101 may be divided into different numbers of blocks.

The direction along which the map data are divided verticallycorresponds to the latitudinal direction, whereas the direction alongwhich the map data are divided horizontally corresponds to thelongitudinal direction. The terms “blocks” and “meshes” in this contextare used for convenience in the explanation of the embodiment, and otherterms may be used as well. Meshes may instead be referred to as parcels,or blocks may be referred to as first division units and meshes may bereferred to as second division units. In addition, the blocks and meshesmay be considered to be units obtained by geographically dividing thedata.

Road/Guidance Data

The following is an explanation of the road data and the guidance dataincluded in the map data. The road data and the guidance data providedat the different levels are managed in units of individual blocks andindividual meshes. Road data and guidance data are prepared as mesh datain correspondence to each mesh. Simply put, blocks are managed by usinga block management table, and a mesh management table is used to managethe individual meshes in each block.

FIG. 4 schematically illustrates the relationship among a blockmanagement table, mesh management tables and mesh data which are thedata managed by using the mesh management tables. FIG. 4 shows that asingle block management table is provided in correspondence to the dataat level x. The block management table contains information related toall the blocks at this level. For instance, since there are 16 blocks atlevel 1, as shown in FIG. 3, 16 sets of block information are providedat level 1 in correspondence. Since each four blocks at level 1constitute a single block for management at level 2, there are fourblocks and four sets of block information are provided in correspondenceat level 2. FIG. 4 also shows that a mesh management table is providedin correspondence to each block.

The meshes in a given block are managed by using the corresponding meshmanagement table. For instance, access to the recording medium 2 or thenonvolatile memory 12 to obtain mesh data is managed with the meshmanagement table. To be more precise, the mesh management table containsinformation with which the meshes are managed and the control device 11manages the meshes by using the table.

FIG. 5 illustrates in further detail the relationship among the blockmanagement table, a given mesh management table and the mesh data. Ablock management table 201 holds n sets of block management information202. In correspondence to each block, a single mesh management table 211is provided. In the mesh management table 211, sets of mesh information212 to 214 are stored each in correspondence to a mesh. These sets ofmesh information are stored in a specific order, by first storing theinformation for the mesh located at the lower left end in the block,sequentially storing the information corresponding to the meshesadjacent to the right, storing the information for the mesh at the leftend in the row directly above the bottom row once the information forthe mesh at the right end on the bottom row is stored, sequentiallystoring the information in the meshes adjacent to the right and finallystoring the information for the mesh at the upper right end. In thisexample, the left side corresponds to west, the right side correspondsto east, the bottom side corresponds to south and the top sidecorresponds to north. The information 212 for the mesh at the lower leftend is constituted with a sector address 221, a mesh data file name 222and a storage location 223. The information 213 for the adjacent mesh(adjacent to the right) is constituted with a block number 224, a meshdata file name 225 and a storage location 226. The information for eachsubsequent mesh is constituted with a block number 224, a mesh data filename 225 and a storage location 226 as well.

It is to be noted that the recording medium 2 is managed by dividing therecording area into a plurality of sectors and dividing each sector intoa plurality of blocks. The block number 224 indicates the number ofblocks used by the immediately preceding set of mesh information.Accordingly, the storage location at which the mesh data in a desiredmesh are stored on the recording medium 2 can be calculated as acumulative value obtained by adding the numbers of blocks stored in thesubsequent sets of mesh information to the leading sector address storedin the first set of mesh information 21.

As the storage location 223 or 226, identification information whichenables identification of the location at which the mesh datacorresponding to the specific mesh are recorded, i.e., whether the meshdata are recorded in the recording medium 2 or in the nonvolatile memory12, is stored. If the mesh data are recorded in the nonvolatile memory12, information indicating the storage address and the data size is alsoincluded. It is to be noted that instead of the storage locations 223and 226, the mesh data file names 222 and 225 may be used asidentification information when identifying the storage locations of thecorresponding mesh data, i.e., whether they are recorded in therecording medium 2 or in the nonvolatile memory 12. For instance, if agiven set of mesh data is still recorded in the recording medium 2alone, NULL may be stored as the corresponding mesh data file name 222or 225, and once the mesh data become recorded in the nonvolatile memory12, the specific filename may be recorded. In this case, the programshould first make a decision as to whether or not NULL is indicated forthe file name 222 or 225, access the recording medium 2 if the filenameis NULL, and access the nonvolatile memory 12 by using the filenamestored therein as an index if the filename is not NULL.

Reference numeral 231 indicates mesh data. The mesh data 231 arebasically constituted with a link table 232, a link attribute table 233and a link relation information table 234. In order to enable access tothe individual tables, information indicating a link table offset 235, alink table size 236, a link attribute table offset, a link attributetable size 238, a link relation information table offset 239 and a linkrelation information table size 240 is stored at the beginning of themesh data. For instance, based upon the link table offset 235, theleading address of the link table 232 in the mesh data 231 can beascertained and thus, data can be read in a volume corresponding to thevalue (e.g., the number of bytes) stored as the link table size 236.This principle applies to the other tables as well.

It is to be noted that a concept whereby a road is represented as a linkstring constituted with links and nodes is adopted in the embodiment. Anode may be an intersection point or a special point set on the road. Alink is equivalent to the portion of the road extending between adjacentnodes, and a link string expresses the road as a plurality of continuouslinks. Between nodes, interpolation points are set to interpolateposition information and the like. FIG. 6 presents examples ofstructures that may be adopted in link strings and links.

FIG. 7 shows the contents of the link table 232 in FIG. 5. The linktable 232 holds information indicating a link string number 301, i.e.,the total number of link strings present in the corresponding mesh, withlink strings 301 each having stored therein data of a link string 1 tok. The data corresponding to each link string 302 are constituted withlink string information 311, history information 312, a delete flag 313,a link number 314 and data of links 1 through m 315.

The link string information 311 is constituted with size data 321, linkstring attribute data 322, road name offset data 323, route No. data 324and level-coordinated link ID No. data 325. The size data 321 indicatesa link string size 331 and a size 332 of the level-coordinated link IDNo. data. The link string attribute data 322 are constituted with a roadtype code 341, RESERVED data 342 and a route No. yes/no flag 343. As thelevel-coordinated link ID No. data 325, level-coordinated link ID Nos.351 at all the higher-order levels relative to the subject level arestored. The level-coordinated link ID No. 351 for each lower-order levelis constituted with an identification flag (level n+1) 361 used toidentify the No. assigned to the level, a start point-side levelcorrespondence key 362 at level n+1 and an end point-side levelcorrespondence key 363 at level n+1. The level correspondence keys areto be explained in detail later.

Each set of link data 315 is constituted with information indicating alink size 371, an attribute 1+X coordinate 372, an attribute 2+Ycoordinate 373, lower-order level normalized coordinates (X, Y) 374, alower-order level ID No. (K) 375, a same node offset 376, a linkattribute offset 377 and a link relation information offset 378. Accessto the link attribute table to be detailed later is enabled based uponthe link attribute offset 377, whereas access to the link relationinformation table to be detailed later is enabled based upon the linkrelation information offset 378.

The X coordinate 372 and the Y coordinate 373 are indicated asnormalized coordinate values. When the mesh is divided into, forinstance, 2048×2048 portions, a normalized coordinate assumes a value inthe range of 0 to 2047. The position of the mesh is normally indicatedas the latitude/longitude at the lower left corner of the mesh. Namely,position information indicating the latitude/longitude at the lower leftcorner of the mesh is stored (not shown) in the mesh management table211. Normalized coordinate values in the mesh are measured relative tothe lower left corner of the mesh set as the origin point. Thus, withthe mesh position information indicating the latitude/longitude at thelower left corner, each set of normalized coordinates indicates aspecific position in the map with two-dimensional coordinate valuescorresponding to the latitude/longitude. The two-dimensional coordinatevalues corresponding to the latitude/longitude can be regarded asuniversal values that remain unaffected by the differences amongnavigation system types and the differences among standards.

In addition to the normalized coordinate values of the X coordinate 372and the Y coordinate 373, the lower-order level normalized coordinates(X, Y) 374 and the lower-order level ID No. (K) 375 are stored in theembodiment. Depending upon the resolution at a given higher-order level,a point with a pair of specific coordinates at the higher-order levelmay contain a plurality of nodes present in close proximity to oneanother at a lower-order level. For this reason, it may not always bepossible to ascertain an accurate one-to-one correspondence betweennodes at the higher-order level and the lower-order level. Accordingly,the lower-order level normalized coordinate data are included in thedata at the higher-order level to make it possible to accuratelyascertain the correspondence to the matching node at the lower-orderlevel in the embodiment. The lower-order level ID No. (K) 375 is aparameter other than the normalized coordinates, which may be, forinstance, height data indicating the height of the node at thelower-order level or time data (information) related to datageneration/update, or both of these data may be provided as thelower-order level ID No. By incorporating in a specific combination theX coordinate 372, the Y coordinate 373, the lower-order level normalizedcoordinates (X, Y) 374 and the lower-order level ID No. (K) 375, thenode at a given level can be identified with a high degree ofreliability and an accurate level-to-level correspondence is definedwith a high degree of reliability. The combined data are referred to asa level correspondence key in the embodiment. Since a levelcorrespondence key is generated by incorporating the parameters atanother level with a two-dimensional key at the subject level, it may bereferred to as a 2.5-dimensional space key.

In the embodiment, these level correspondence keys are used to definethe link ID Nos. of each link at a given level. The link ID No. alongthe forward direction is defined by the level correspondence key at anode located toward the link string start point and the levelcorrespondence key at a node located toward the link string end point.The link ID No. along the reverse direction is defined by reversing thecombination.

Next, the link attribute table 233 in FIG. 5 is explained in detail.FIG. 8 shows the contents of the link attribute table 233. The linkattribute table 233 is constituted with link attribute number 401 andlink attribute data 402. In the link attribute table 233, attribute datarelated to all the links present in the subject mesh are stored, and thetotal number of sets of attribute data is indicated in the linkattribute number 401, whereas attribute data corresponding to theindividual links are stored as the link attribute data 402. Each set oflink attribute data 401 is constituted with element point number data411, element point information 412 provided in correspondence to each ofthe element points and height information 413 indicating the height ofeach element point. Each set of element point information 412 isconstituted with coordinate values (X, Y) 421, a link type code 422,additional type information 423, road widths (forward direction/reversedirection) 424, one-way traffic (forward direction/reverse direction)425, middle lane information (forward direction/reverse direction) 426,a link cost 427 and a VICS link No. 428.

It is to be noted that the term “element point” refers to a node or aninterpolation point in FIG. 6. Since the link cost 427 and the VICS linkNo. 428 are information related to the link (not a sub link), they areonly set in the element point information 1 corresponding to thestarting node. At each middle point in the link string, information isheld in correspondence to both the forward direction and the reversedirection. No information along the reverse direction is provided at thelink string start point (link 1), and no information along the forwarddirection is provided at the link string end point (link m).

Next, the link relation information table 234 in FIG. 5 is explained.FIG. 9 shows the contents of the link relation information table 234.The link relation information table 234 contains link relationinformation number 501 indicating the number of sets of link relationinformation and link relation information 502. In the link relationinformation table 234, information data related to the relations amongall the links present in the subject mesh are stored, with the linkrelation information number 501 indicating the total number of sets ofinformation data and the information data on the individual linkrelations stored as the link relation information 502. The link relationinformation 502 on a given link relation is constituted with dataindicating the number of sets of information 511, intersection names(forward direction/reverse direction) 512, destination sign names(forward direction/reverse direction) 513 and intersection targetobjects (forward direction/reverse direction) 514, traffic control orregulation information 515 and the like period.

The traffic control information 515 is constituted with a levelcorrespondence key 521 at level n on the entry side, a levelcorrespondence key 522 at level n on the exit side and control contents523. The link relation information is guidance data, which are mainlyutilized when providing guidance.

Managing Map Data Update at Navigation System

The map data (road/guidance data) adopting the structure described abovecan be updated in units of individual link strings, in units ofindividual link attributes or in units of individual link relationinformation sets in the embodiment. The following is an explanation of adata update and management implemented in units of the individual linkstrings.

FIG. 10 shows how map data are updated and managed in the navigationsystem 1. The navigation system 1 is able to utilize the latest versionof map data by reading out the mesh management tables and the map datafrom the recording medium 2 and also by reading update map data from theremovable memory 3 or from the map server 6 via the Internet 5.

A navigation system in the related art reads data only from a recordingmedium such as a CD-ROM or a DVD-ROM. The navigation system in theembodiment utilizes the map data in the recording medium 2 and updatedmap data in combination. For this reason, it includes the nonvolatilememory 12 which is a read/write enabled medium. The nonvolatile memory12 is constituted with a hard disk or a flash memory and is capable ofholding the data recorded therein even when the power to the navigationsystem is turned off. The nonvolatile memory 12 may be referred to as acache medium 12 as well.

In the nonvolatile memory 12, the block management tables 124 explainedearlier in reference to FIG. 6 are stored. Each block management table124 contains the identification information used to determine whetherthe mesh management table of a given block is in the recording medium 2or in the nonvolatile memory 12 and the access address of the meshmanagement table. Before new map data are used for the first time, theblock management tables stored in the recording medium 2 are read intothe nonvolatile memory 12. The block management tables are eachinitially set at a value that indicates that the mesh management tablescorresponding to the individual blocks are stored in the recordingmedium 2. Subsequently, as map data are updated in units of linkstrings, a mesh management table 125 is created in the nonvolatilememory 12 for the block containing a mesh along the updated link stringand the corresponding block management table 124 is set so as toindicate that the mesh management table of that particular block is nowavailable in the nonvolatile memory 12. The program references the blockmanagement table 124 to ascertain whether or not the mesh managementtable is stored in the recording medium 2 or in the nonvolatile memory12.

Reference numeral 126 indicates a memory area inside the memory 15 ofthe navigation system used for mesh management table storage. Hereafter,it is referred to as the memory 126. After judging whether the subjectmesh management table is available in the recording medium 2 or in thenonvolatile memory 12, the program reads out the mesh management tablefrom the correct medium and stores the mesh management table thus readout into the memory 126. The mesh management table 127 read into thememory 126 contains the mesh information explained earlier in referenceto FIG. 5.

As update data provided in units of individual link strings in a givenmesh area are received for the first time from the removable memory 3,the map data in the mesh are read into the nonvolatile memory 12 and arestored as map data 133. Then, data update is executed in units of theindividual link strings in the nonvolatile memory 12. At this time,information indicating that the mesh data of the subject mesh are storedin the nonvolatile memory 12 and the address at which the mesh data arestored in the nonvolatile memory 12 are written as the storage locationdata in the corresponding mesh information at the mesh management tablein the nonvolatile memory 12. Subsequently, the nonvolatile memory 12can be accessed for the mesh data based upon these details. Namely, themap data in a mesh that has never undergone a data update in units ofindividual link strings are obtained by accessing the recording medium2, whereas the map data in a mesh that has undergone a data update inunits of the individual link strings even once are obtained by accessingthe nonvolatile memory 12.

Update in Units of Individual Link Strings

Next, a data update executed in units of the individual link strings 302at the link table 232 in FIG. 7 is explained. FIG. 11 presents aflowchart of the control executed when updating data in units of theindividual link strings. The control in FIG. 11 is executed in thecontrol device 11. In addition, a prerequisite to the control in FIG. 11is that the mesh containing the update target link string is alreadyread into the nonvolatile memory 12. The control device 11 starts thecontrol after verifying that the removable memory 3 is loaded, receivingthe link string update data and also verifying that the mesh datacorresponding to the mesh containing the update target link string arepresent in the nonvolatile memory 12.

In step S1, the link string update data having been read are added atthe end of the link table 232 in the mesh data 231 of the subject meshin the nonvolatile memory 12 and the link string number 301 isincremented by 1. The link string update data, which include the datafor the entire link string in FIG. 7, are standard link string datathemselves. OFF is set for the delete flag 313 in the update data. Instep S2, the delete flag 313 in the old link string data correspondingto the update link string data is set in an ON state. This delete flagis used as identification information for determining whether to makethe entire link string data valid or invalid. When the delete flag ison, the link string data are made invalid, whereas when the delete flagis off, the link string data are made valid.

In step S3, the link table offset 235, the link table size 236, the linkattribute table offset 237, the link attribute table size 238, the linkrelation information table offset 239 and the link relation informationtable size 240 in the mesh data 231 are updated in accordance with theupdated link table 232. In step S4, the mesh information 212 to 214corresponding to the subject mesh in the mesh management table isupdated. For instance, if the storage address or the data size in thenonvolatile memory 12 has been altered, the new address at which thedata are now stored and the new data size are recorded as the storagelocation data 223 or 226.

It is to be noted that map data are updated in units of individual linkattributes and in units of individual sets of link relation informationin a manner similar to that with which the map data are updated asdescribed above. The link attribute number 401 in the link attributetable and the link relation information set number 501 in the linkrelation information table, too, are updated in a similar manner.

Map Display Control Flowchart

FIG. 12 presents a flowchart of the control implemented by the controldevice 11 when displaying a map by reading the map data (road/guidancedata). In step S11, the current position of the vehicle is detected withthe current position detection device 13. In step S12, necessary meshdata in a mesh around the current vehicle position are read. In stepS13, a decision is made as to whether or not all the necessary mesh datain meshes around the current vehicle position have been read. If it isdecided in step S13 that although necessary mesh data have not beenread, the operation returns to step S12 to read more mesh data that arenecessary in a mesh around the current vehicle position. Upon decidingin step S13 that all the necessary mesh data in the meshes around thecurrent vehicle position have been read, the operation proceeds to stepS14 to execute map display processing. It is to be noted that the mapdisplay processing is executed by disregarding link string data, linkattribute data or link relation information data the correspondingdelete flag for which is in an ON state.

FIG. 13 presents a detailed flowchart of the processing executed in stepS12 in FIG. 12. In step S21, the block management table in thenonvolatile memory 12 is accessed as explained earlier. The explanationis given here on the assumption that the block management table hasalready been read into the nonvolatile memory 12. In step S22, basedupon the contents of the block management table, a decision is made asto whether the mesh management table corresponding to the particularblock is available in the recording medium 2 or in the nonvolatilememory 12. The operation proceeds to step S23 if it is decided in stepS22 that the mesh management table is in the recording medium 2. In stepS23, the mesh management table corresponding to the block is read fromthe recording medium 2 into the memory 126.

If, on the other hand, it is decided in step S22 that the meshmanagement table is not available in the recording medium 2, i.e., thatthe mesh management table is in the nonvolatile memory 12, the operationproceeds to step S24. In step S24, the mesh management tablecorresponding to the block is read from the nonvolatile memory 12 intothe memory 126. In step S25, the storage address of the subject mesh isobtained based upon the contents of the mesh management table havingbeen read into the memory at 126. In step S26, the mesh data are readfrom the storage address having been ascertained. At this time, if themesh data have never been updated in units of the individual linkstrings, the mesh data are read from the recording medium 2. If, on theother hand, mesh data corresponding to a link string in the mesh havebeen updated even once, the data are read from the nonvolatile memory12.

The link table in the mesh data is updated in units of individual linkstrings as described above, and then, the map display processing isexecuted by using the map data having been updated in units of theindividual link strings.

Background/Name Data

Next, the background/name data in the map data are explained. As in thecase of the road/guidance data, the background/name data, too, at agiven level are managed in units of individual blocks and individualmeshes. For this reason, the background/name data are managed asillustrated in FIG. 5, with the mesh data 231 in FIG. 5 replaced by meshdata 601 in FIG. 14. FIG. 14 shows the contents of the mesh dataconstituting the background/name data. The mesh data 601 are basicallyconstituted with a background table 602 and a name table 603. In orderto enable access to the individual tables, information indicating abackground table offset 604, a background table size 605, a name tableoffset 606 and a name table size 607 is stored at the beginning of themesh data 601. For instance, based upon the background table offset 604,the leading address of the background table 602 in the mesh data 601 canbe ascertained and thus, data can be read in a volume corresponding tothe value (e.g., the number of bytes) stored as the background tablesize 605. This principle applies to the name table as well.

FIG. 15 shows the contents of the background table 602 in FIG. 14. Theterm “background” refers to background objects other than roads, such asmountains, the ocean and railways, to be displayed in the road map, andbackground data include polygon (planar) data, poly line (linear) dataand point data used to display the individual background elements. Thebackground table 602 contains background data number 701 indicating thetotal number of sets of background data in the subject mesh andbackground data 702 that include sets of background data 1 to s. Eachset of background data 702 is constituted with background information711, history information 712, a delete flag 713, an element point number714, a start point X coordinate 715, a start point Y coordinate 716,offset coordinates 1 (ΔX, ΔY) 717, offset coordinate 2 (ΔX, ΔY) 718,offset coordinates t (ΔX, ΔY) 719 and an information pointer 720.

The background information 711 includes a size 721, a shapeclassification (plane, line, point) 722, a drawing order ranking 723, abackground attribute 724 and a name offset 725. The background attribute724 is constituted with a zoom enable flag 731 and a background typecode 732.

Next, the name table 603 in FIG. 14 is explained. FIG. 16 shows thecontents of the name table 603. The term “name” refers to the names ofgeographic areas, buildings and other objects to be displayed in theroad map. The name table 603 contains name data number 801 and name data802. In the name table 603, all the name data corresponding to thesubject mesh are stored, and the name data number 801 indicates thetotal number of sets of name data in the mesh. Each set of name data 802is constituted with name information 811, history information 812, adelete flag 813, a character number 814, an X coordinate 815, a Ycoordinate 816, a character string code 1 (817), a character string code2 (818), a character string code v (819) and an information pointer 820.

The name information 811 is constituted with a size 821, a drawing orderranking 822 and a name attribute 823. The name attribute 823 isconstituted with a zoom enable flag 831 and a name type code 832.

In the embodiment, the background/name data assuming the structuresdescribed above can be updated in units of the individual sets ofbackground data and in units of the individual sets of name data. Theupdate management is executed in a manner similar to that with which thedata update in units of individual link strings is managed, and thus,their update management can be understood easily by applying theexplanation of the link string update management to the background dataor the name data. The background data number 701 in the background tableand the name data number 801 in the name table, too, are updated in asimilar manner. It is to be noted that prior to an update, theindividual sets of background data and the individual sets of name dataare both arranged in an order corresponding to the initially set drawingorder. If background data or name data become altered, new data areadded, some data become deleted or the like as a result of the update,the data can be rearranged in correspondence to the drawing orderrankings assigned to the individual sets of data.

Route Calculation Data

Next, the route calculation data in the map data are explained. As inthe case of the road/guidance data, the route calculation data at agiven level are managed in units of individual blocks and individualmeshes. For this reason, the route calculation data are managed asillustrated in FIG. 5, with the mesh data 231 in FIG. 5 replaced by meshdata 901 in FIG. 17. FIG. 17 shows the contents of the mesh dataconstituting the route calculation data. The mesh data 901 are basicallyconstituted with a connection table 902 and a level correspondence table903. In order to enable access to the individual tables, informationindicating a connection table offset 604, a connection table size 905, alevel correspondence table 906 and a level correspondence table size 907is stored at the beginning of the mesh data. For instance, based uponthe connection table offset 904, the leading address of the connectiontable 902 in the mesh data 901 can be ascertained and thus, data can beread in a volume corresponding to the value (e.g., the number of bytes)stored as the connection table size 905. This principle applies to thelevel correspondence table as well.

FIG. 18 shows the contents of the connection table 902 in FIG. 17. Asexplained earlier, the route calculation data are network dataconstituted with branch information and the like that do not bear directrelation to road shapes, and are provided as node connectioninformation. The connection table 902 contains node total number 1001indicating the total number of nodes present in the subject mesh, linktotal number 1002 indicating the total number of links present in themesh and node information 1003 which includes set of node information 1to w. Each set of node information 1003 is constituted with a nodeinformation size 1011, history information 1012, a delete flag 1013,subject node information 1014 and information 1015 provided incorrespondence to each of adjacent nodes #1 to #e.

The subject node information 1014 is constituted with adjacent nodenumber+X coordinate 1021, a higher-order level present flag 1022,subject node road type code+Y coordinate 1023, lower-order levelnormalized coordinates (X, Y) 1024 and a lower-order level ID No. (K)1025. In the embodiment, the subject node information contains thelower-order level normalized coordinates (X, Y) 1024 and the lower-orderlevel ID No. (K) 1025 in addition to the normalized coordinate values ofthe X coordinate 1021 and the Y coordinate 1023. A level correspondencekey to constitute a subject node ID No. is formed by combining the Xcoordinate 1021 and the Y coordinate 1023 with the lower-order levelnormalized coordinates (X, Y) 1024 and the lower-order level ID No. (K)1025. The concept of the level correspondence key has been explained inreference to the road/guidance data.

Each set of adjacent node information 1015 is constituted with link typecode+X coordinate 1031, higher-order level present flag+Y coordinate1032, lower-order level normalized coordinates (X, Y) 1033, alower-order level ID No. (K) 1034, a traffic control (traveling code)yes/no flag 1035, outside map perimeter flag+map perimeter directiondata 1036, an adjacent node road type code 1037, a link road type code1038, a road width+bypass flag 1039, speed limit+link length+averagetraveling time data 1040 and a traveling code (one to four words) 1041.A level correspondence key to constitute an adjacent node ID No. is alsogenerated by combining the X coordinate 1031 and the Y coordinate 1032with the lower-order level normalized coordinates (X, Y) 1033 and thelower-order level ID No. (K) 1034 for each adjacent node.

Based upon the subject node ID No. and the adjacent node ID No.described above, a link ID No. of the link between the subject node andthe adjacent node is defined. Thus, nodes and links at a given level canbe identified with a high degree of reliability and the correspondencebetween different levels can be accurately ascertained in the routecalculation data as well. FIG. 19 is a conceptual diagram of therelationship between the node ID Nos. and the link ID Nos. assigned withrelation to a node 1 and a node 2 adjacent to each other. The node IDNo. of a given node constitutes the subject node information of thenode, and it is also used as adjacent node information at a nodeadjacent to the node. The link ID Nos. include a forward-direction linkID No. and a reverse direction link ID No. defined by switching theorder of the arrangement of individual node ID Nos.

A route display achieved by using node ID Nos. and link ID Nos. is nowexplained. When a given route is calculated by using the routecalculation data, the node ID Nos. of the nodes present on the route areobtained. Based upon the obtained node ID Nos., the road/guidance datacan be accessed in order to obtain the data needed for the routedisplay. In this situation, specific link ID Nos. with directionalinformation indicating the direction along which the nodes are connectedcan be identified based upon the order in which the nodes are arranged.By using the link ID Nos. with the directional information thusidentified, the data needed to display the route can be obtained. Forinstance, even an intersection bearing different names for traffic goingin opposite directions can be displayed with the correct intersectionname.

Next, the level correspondence table 903 in FIG. 17 is explained. FIG.20 shows the contents of the level correspondence table 903. In thelevel correspondence table 903, information indicating thecorrespondence between the nodes at the subject level and specific nodesin specific meshes at a lower-order level is stored.

The level correspondence table 903 contains level corresponding nodetotal number 1101 indicating the total number of nodes in the subjectmesh in correspondence to which level correspondence information isprovided, link total number 1102 indicating the total number of links inthe mesh and correspondence information 1103 that includes sets ofcorrespondence information 1 to f. Each set of correspondenceinformation 1103 is constituted with a correspondence information size1111, history information 1112, a delete flag 1113, subject nodecorrespondence information 1114 and adjacent node information 1115provided in correspondence to each of adjacent nodes #1 to #g.

The subject node correspondence information 1114 is constituted withadjacent node number data 1121, subject level information 1122 andlower-order level information 1123. The subject level information 1122indicates an X coordinate 1131, a Y coordinate 1132, lower-order levelnormalized coordinates (X, Y) 1133 and a lower-order level ID No. (K)1134. The level correspondence key is generated by combining thesecontents and the resulting level corresponding key is used as thesubject node ID No. of the subject node at the subject level. Thelower-order level information 1123 is constituted with a lower-orderlevel presence range 1141, an X coordinate 1142, a Y coordinate 1143,lower-order level normalized coordinates (X, Y) 1144 and a lower-orderlevel ID No. (K) 1145. A level correspondence key is generated in asimilar manner by combining the x-coordinate 1142 and the y-coordinate1143 with the lower-order level normalized coordinates (X, Y) 1144 andthe lower-order level ID No. (K) 1145 to be used as the subject node IDNo. of the subject node at the lower-order level.

Each set of adjacent node correspondence information 1115 is constitutedwith subject level adjacence information 1151 and lower-order levelinformation 1152. The subject level adjacence information 1151 indicatesan X coordinate 1161, a Y coordinate 1162, lower-order level normalizedcoordinates (X, Y) 1163 and a lower-order level ID No. (K) 1164. A levelcorrespondence key is generated by combining these contents and theresulting level corresponding key is used as the adjacent node ID No. ofthe adjacent node at the subject level. The lower-order level adjacenceinformation 1152 is constituted with a lower-order level presence range1171, an X coordinate 1172, a Y coordinate 1173, lower-order levelnormalized coordinates (X, Y) 1174 and a lower-order level ID No. (K)1175. A level correspondence key is generated in a similar manner bycombining the x-coordinate 1172 and the y-coordinate 1173 with thelower-order level normalized coordinates (X, Y) 1174 and the lower-orderlevel ID No. (K) 1175 to be used as the adjacent node ID No. of theadjacent node at the lower-order level.

In the embodiment, the route calculation data assuming the structuredescribed above can be updated in units of the individual sets of nodeinformation and in units of the individual sets of link relationinformation. The update management is executed in a manner similar tothat with which the data update in units of individual link strings ismanaged and thus, their update management can be understood easily byapplying the explanation of the link string update management to thenode information or the link relation information. The node total number1001 and the link total number 1002 in the connection table and thelevel correspondence total number 1101 and the link total number 1102 inthe level correspondence table, too, are updated in a similar manner

The map data structure achieved in the embodiment as described above andthe navigation system adopting the data structure achieve the followingadvantages.

-   (1) The road/guidance data can be updated in units of individual    link strings, in units of individual link attributes and in units of    individual sets of link relation information, the background/name    data can be updated in units of individual background display    objects such as polygons, poly lines and points and in units of    individual names, and the route calculation data can be updated in    units of individual sets of node information and in units of    individual sets of level correspondence information. Namely, the    map-related information can be updated in units of individual    information elements constituting the information. Thus, when the    map data are only partially updated, the entire recording medium    such as a DVD-ROM having stored therein the map data does not need    to be replaced with a new recording medium. In addition, since a    data update can be executed on the basis of the smallest units of    data, the volume of the data that need to be communicated (the    communication cost) at the time of the data update can be reduced.    The length of time required for the data update, too, can be    reduced. The “information elements” constituting the map-related    information refer to elements, the specific types of which are each    defined in correspondence to a given function, a given purpose of    use or the like of the information or the data, and thus, they may    instead be referred to as information or data types, each defined in    correspondence to a specific function, a specific purpose of use or    the like.-   (2) Information elements such as link strings each include a delete    flag, and thus, it is not necessary to delete or replace each set of    old data. It is to be noted that the old data may be deleted and    replaced with the new update data instead of providing a delete    flag.-   (3) The management tables used to manage the map data are stored in    the nonvolatile memory and the contents of the relevant management    table can be updated each time an information element such as a link    string is updated. Thus, data can be updated in a single unit of    information element such as a link string and also the updated data    can be easily accessed subsequently.-   (4) Since mesh data containing the update target information element    such as a link string are stored in the nonvolatile memory, the    update data can be added or used for an overwrite, and the    management information can be updated after the addition of or the    overwrite with the update data with ease. In addition, even when the    power to the apparatus is turned off, the update data are retained.-   (5) The node position information is constituted as a level    correspondence key generated by combining the subject level position    information with lower-order level position information, and as a    result, each node can be identified with a high degree of    reliability and the specific node correspondence at different levels    can be ascertained with ease.-   (6) Since a link ID No. of a given link at a given level is defined    by using level correspondence keys (node ID Nos.), the link can be    identified with a high degree of reliability and the link    correspondence over different levels can be ascertained with ease as    well. In addition, by switching the order of the level    correspondence keys, a forward-direction link ID No. and a reverse    direction link ID No. are defined so as to allow a reliable    identification on the forward-direction link ID No. or the reverse    direction link ID No. The link ID Nos. defined as described above    are utilized with a high level of effectiveness when it is necessary    to specify the link direction when providing the route display and    the route guidance based upon the results of the route calculation,    for instance.-   (7) Since the background data and the name data include the drawing    order information, the data arrangement can be readjusted in    correspondence to the drawing order when the data are updated in    units of the individual information elements. As a result, the data    update does not lower the drawing speed.-   (8) Since the update data can be provided through communication via    the Internet, the latest version of update data is made available    promptly and at low cost.-   (9) Since the two-dimensional coordinate values corresponding to the    specific latitude/longitude are used as the node position    information indicating the position of each node, the data can be    updated regardless of the model type or the specifications of the    navigation system. Namely, since the two-dimensional coordinates    corresponding to the latitude/longitude are universal data, the data    update method can be standardized by using these data.-   (10) Since a parameter other than the two-dimensional coordinate    values is also used to generate a level correspondence key, each    node can be identified with an even higher degree of reliability.    For instance, by using height data as an additional parameter, even    a connecting point at an elevated intersection can be reliably    identified.

While an explanation is given above in reference to the embodiment on anexample in which the control program executed by the control device 11of the navigation system is stored in the ROM, the present invention isnot limited to this example. The control program and the installationprogram may be provided in a recording medium such as a DVD. It is to benoted that the recording medium does not need to be a DVD, and theprograms may be provided in any of various types of recording mediaincluding a CD-ROM and magnetic tape.

In addition, the programs may be provided via a transmission medium suchas a communication line, a typical example of which is the Internet.Namely, the programs may be converted to signals on a carrier wave thatcarries a transmission medium and be transmitted as signals. Whenproviding the programs in the recording medium or via the Internet, aconfiguration similar to that shown in FIG. 1 may be adopted. Forinstance, the recording medium 2 may be used as a recording mediumhaving recorded therein the programs and the map server 6 may serve as aserver that provides the application program. In other words, theprograms can be distributed in the form of a computer-readable computerprogram product adopting any of various modes such as a recording mediumand a carrier wave.

Furthermore, the control program described above may be executed on apersonal computer so as to enable the personal computer to function as acar navigation system. In such a case, the current position detectiondevice 13, the input device 19 and the like should be connected tospecific I/O ports of the personal computer.

While an explanation is given above in reference to the embodiment on anexample in which update data are obtained from the removable memory 3,the present invention is not limited to this example. For instance, theupdate data may be provided by temporarily replacing the recordingmedium 2 with a CD-ROM or a DVD-ROM having written therein the updatedata, instead.

While an explanation is given above in reference to the embodiment on anexample in which the initial map data are read from the recording medium2, the present invention is not limited to this example. The initial mapdata may instead be downloaded via the Internet 5, stored into thenonvolatile memory 12 and then updated and managed through the methoddescribed earlier. Alternatively, necessary map data may be received viathe Internet 5 as they become needed, the map data may be stored intothe nonvolatile memory 12 each time they are received and then they maybe updated and managed through the method described earlier wheneverthey are updated subsequently. In other words, the map data can bedistributed in the form of a map data product that can be read by acomputer or a navigation system (map data processing apparatus),adopting any of various modes such as a recording medium and a carrierwave.

While the nonvolatile memory 12 is provided as an internal memory of thenavigation system 1 in the embodiment explained above, the presentinvention is not limited to this example. An external storage deviceconnected via a cable or the like may be used instead, for instance.

While the map data are provided in correspondence to a plurality oflevels and level correspondence keys each generated by combining thenormalized coordinates of a node at the subject level and the normalizedcoordinates at the lower-order level in the embodiment explained above,the present invention is not limited to this example. For instance, thesets of coordinates of all the nodes may each be indicated by using theposition information related to the specific latitude/longitude at theresolution available at the most detailed level. For instance, each setof node coordinates may be indicated directly by using the absolutelatitude/longitude at a predetermined resolution level. Alternatively,the node coordinates may be indicated by combining the positioninformation related to the latitude/longitude at a predeterminedresolution level with the ID number (K) such as the node height data orthe update time data described earlier.

While an explanation is given above in reference to the embodiment on anexample in which the individual sets of road/guidance data and routecalculation data are updated by using the individual sets of update dataprovided in matching information element units, e.g., link string unitsand node information set units, the present invention is not limited tothis example. For instance, update data provided in units of linkstrings to update the road/guidance data may be used to update the linktable in units of link strings and to update the connection table in theroute calculation data in units of node information sets, since theupdate data provided in units of link strings include node positioninformation and control information and thus update data for the routecalculation data can be generated based upon such node positioninformation and control information. In addition, individual sets ofdata may be updated by using common update data provided in a specificformat that can be commonly used to update the road/guidance data, thebackground/name data and the route calculation data in units of specificinformation elements. In such a case, a program through which updatedata provided in units of information elements of a specific type to beused to update each type of data are generated from the common updatedata conforming to the specific format should be installed in thenavigation system 1. Since this reduces the volume of the communicationdata, an update can be executed even faster.

While the invention has been particularly shown and described withrespect to a preferred embodiment and variations thereof by referring tothe attached drawings, the present invention is not limited to theseexamples and it will be understood by those skilled in the art thatvarious changes in form and detail may be made therein without departingfrom the spirit, scope and teaching of the invention.

1. A data product that can be read by a computer or a map dataprocessing apparatus, comprising: map data including map-relatedinformation related to a map, wherein: the map-related informationincludes a compilation of a plurality of information elements of asingle type; the map-related information can be updated in units of theindividual information elements at the map data processing apparatus;and the map-related information includes management information used tomanage the map-related information, which is also updated when the maprelated information is updated in units of the individual informationelements.
 2. A data product according to claim 1, wherein: roads areeach indicated as a link string having one or more continuous links,with nodes representing points on the roads and each link representing aroad portion connecting two adjacent nodes; and the information elementseach correspond to information related to a link string.
 3. A dataproduct according to claim 2, wherein: the information related to thelink string includes node position information indicating a position ofa node contained in the link string.
 4. A data product according toclaim 2 or claim 3, wherein: the information related to the link stringincludes guidance information related to the link string.
 5. A dataproduct according to claim 3, wherein: a plurality of levels eachcorresponding to one of a plurality of scaling factors of the map aredefined; a level corresponding to a scaling factor with a smaller valuethat renders the map as a wider area map is designated as a higher-orderlevel; a plurality of sets of map-related information are provided eachin correspondence to one of the plurality of levels; and the nodeposition information included in the information related to the linkstring at a specific level contains node position information of a nodeat the specific level and node position information on a node at alower-order level corresponding to the node at the specific level.
 6. Adata product according to claim 1, wherein: the map-related informationis information related to a background used to display a road map; andthe information elements each constitute information related to abackground object corresponding to a single display management unit. 7.A data product according to claim 6, wherein: the information related toa background object corresponding to the single display management unitis information with regard to a single polygon, a single poly line or asingle point related to the background.
 8. A data product according toclaim 6, wherein: the information related to a background objectcorresponding to the single display management unit includes informationindicating a drawing order; and the map-related information assumes astructure that allows a rearrangement of a plurality of sets ofinformation each related to a background object corresponding to thesingle display management unit which are grouped together, incorrespondence to the drawing order when one of the plurality of sets ofinformation each related to a background object corresponding to thesingle display management unit is updated.
 9. A data product accordingto claim 1, wherein: the information elements each correspond toinformation related to a single name used to display a road map.
 10. Adata product according to claim 9, wherein: the information related to asingle name includes information indicating a drawing order; and themap-related information assumes a structure that allows a rearrangementof a plurality of sets of information each related to a single namewhich are grouped together, in correspondence to the drawing order whenone of the plurality of sets of information related to a single name isupdated.
 11. A data product according to claim 1, wherein: points onroads constitute nodes; the map-related information is informationrelated to connections of the nodes used for route calculation; and theinformation elements each correspond to information managed in a singlenode unit.
 12. A data product according to claim 11, wherein: theinformation managed in the single node unit includes information relatedto a subject node and information related to a node adjacent to thesubject node.
 13. A data product according to claim 11 or 12, wherein: aplurality of levels each corresponding to one of a plurality of scalingfactors of the map are defined; a level corresponding to a scalingfactor with a smaller value that renders the map as a wider area map isdesignated as a higher-order level; a plurality of sets of map-relatedinformation are provided each in correspondence to one of the pluralityof levels; and node position information included in the informationmanaged in the single node unit at a specific level contains nodeposition information on a node at the specific level and node positioninformation on a node at a lower-order level corresponding to the nodeat the specific level.
 14. A data product according to claim 1, wherein:points on roads constitute nodes; the map-related information isinformation related to connections of the nodes used for routecalculation; a plurality of levels each corresponding to one of aplurality of scaling factors of the map are defined; a levelcorresponding to a scaling factor with a smaller value that renders themap as a wider area map is designated as a higher-order level; aplurality of sets of map-related information are provided each incorrespondence to one of the plurality of levels; and the informationelements each constitute information related to a node at a lower-orderlevel corresponding to information related to a node at a specificlevel.
 15. A data product according to claim 14, wherein: node positioninformation included in the information related to the node containsposition information on the node at a level having contained therein thenode and position information on a node at a lower-order levelcorresponding to the node at the level having contained therein thenode.
 16. A data product that can be read by a computer or a map dataprocessing apparatus, comprising: map data including map-relatedinformation related to a map, wherein: points on roads constitute nodesand road portions extending between adjacent nodes are indicated aslinks; information used to identify each of the nodes includes nodeposition information related to latitude and longitude; and informationused to identify each of the links includes a combination of the nodeposition information related to the latitude and longitude of a node atone end of a target link and the node position information related tothe latitude and longitude of a node at another end of the target link.17. A data product according to claim 16, wherein: the information usedto identify each of the links specifies a direction of the target linkin correspondence to an order with which the node position informationrelated to the latitude and longitude of the node at the one end of thetarget link and the node position information related to the latitudeand longitude of the node at the other end of the target link arecombined.
 18. A data product according to claim 16 or claim 1, wherein:a plurality of levels each corresponding to one of a plurality ofscaling factors of the map are defined; a level corresponding to ascaling factor with a smaller value that renders the map as a wider areamap is designated as a higher-order level; a plurality of sets ofmap-related information are provided in each in correspondence to one ofthe plurality of levels; and the node position information at a specificlevel contains node position information on a node at the specific leveland node position information on a node at a lower-order levelcorresponding to the node at the specific level.
 19. A data productaccording to claim 1, wherein: the information elements each includeidentification information indicating whether information pertaining toa subject information element is valid or invalid.
 20. A data productaccording to claim 1, wherein the data product is a recording mediumhaving recorded therein the map data.
 21. A map data processingapparatus, comprising: a recording medium drive unit having loadedtherein a recording medium that is a data product according to claim 20;an update data acquisition unit that acquires update data used to updatemap-related information in units of the individual information units;and a processing unit that processes map data based upon the map datarecorded in the recording medium and the update data acquired by theupdate data acquisition unit.